﻿<?xml version="1.0" encoding="utf-8" ?>
<SourceAnalyzer Name="StyleCopContrib Rules">
	<Description>
		StyleCopContrib rules added to analyzer.
	</Description>
	<Properties>
		<StringProperty Name="UsingDirectiveGroups" DefaultValue="System;*" FriendlyName="Using directive groups"
			Description="List of the group prefix (* is a wildcard).  The group separator is ; and the namespace separator is ," />
		<BooleanProperty Name="AliasShouldBeLast" DefaultValue="false" FriendlyName="Alias should be last of using group"
			Description="Wheither aliased using should be grouped at the end of their respective using group" />
	</Properties>
	<Rules>
		<RuleGroup Name="Spacing Rules">
			<Rule Name="NoTrailingWhiteSpace" CheckId="SC1001">
				<Context>No trailing whitespace are allowed at the end of lines.</Context>
				<Description>Validates that the code does not contain trailing whitespaces.</Description>
			</Rule>
			<Rule Name="IndentUsingTabs" CheckId="SC1002">
				<Context>Use tab for indentation instead of spaces.</Context>
				<Description>Use tab for indentation instead of spaces.</Description>
			</Rule>
		</RuleGroup>
		<RuleGroup Name="Ordering Rules">
			<Rule Name="UsingDirectiveMustBeSortedAlphabeticallyByGroup" CheckId="SC1201">
				<Context>Using directive must be sorted alphabetically by group.</Context>
				<Description>Using directive must be sorted alphabetically by group.</Description>
			</Rule>
			<Rule Name="UsingDirectiveGroupMustFollowGivenOrder" CheckId="SC1202">
				<Context>Using directive group must follow the order given in the rule configuration.</Context>
				<Description>Using directive group must follow the order given in the rule configuration.</Description>
			</Rule>
			<Rule Name="FirstUsingDirectiveMustBeSystem" CheckId="SC1203">
				<Context>System must always be the first using directive.</Context>
				<Description>System must always be the first using directive.</Description>
			</Rule>
			<Rule Name="UsingDirectiveGroupMustBeSeparatedByBlankLine" CheckId="SC1204">
				<Context>Each using directive group must be separated by a single blank line.</Context>
				<Description>Each using directive group must be separated by a single blank line.</Description>
			</Rule>
		</RuleGroup>
		<RuleGroup Name="Naming Rules">
			<Rule Name="FileNameMustMatchTypeName" CheckId="SC1301">
				<Context>FileNameMustMatchTypeName.</Context>
				<Description>FileNameMustMatchTypeName.</Description>
			</Rule>
		</RuleGroup>
	</Rules>
</SourceAnalyzer>